Building automation system and method

ABSTRACT

Building automation system and method. According to one embodiment of the invention, building automation system may comprise a controller area network (CAN) bus. At least one control device is operatively associated with the CAN bus, the at least one control device issuing a signal over the CAN bus. At least one controlled device is operatively associated with the CAN bus, the at least one controlled device responding to the signal.

FIELD OF THE INVENTION

[0001] The invention generally pertains to building automation, and morespecifically, to building automation systems and methods.

BACKGROUND OF THE INVENTION

[0002] The ability to control one or more devices in a building (e.g.,lighting, heating, air conditioning, security systems) based on one ormore parameters (e.g., time, temperature, user preference) is known asbuilding automation. Building automation may be implemented in any of anumber of different types of buildings, including homes, offices,restaurants, stores, theaters, and hotels, to name only a few.

[0003] Building automation systems operate by issuing commands from acontrol panel (e.g., a keypad) to an output device (e.g., a lampcontrol). Inexpensive building automation systems are available whichuse the existing electrical wiring in the building for issuing commandsto the output device. The control panel and output device are eachplugged into electrical outlets in the home and the control panel issuescommands via the electrical wiring in the home. However, the commandsmay be distorted or lost due to “noise” in the electrical wiring. Inaddition, such systems are limited to relatively few output devices.

[0004] Inexpensive building automation systems are also available inwhich the control panel issues radio frequency (RF) commands to theoutput devices. However, RF transmission is typically limited in range(e.g., by government regulation) and is subject to interference (e.g.,from other RF devices).

[0005] Other building automation systems are available which use an RS232 architecture to issue commands from the control panel to the outputdevices. The RS 232 architecture allows more reliable data exchangebetween the control panel and the output devices. However, the controlpanel must be directly connected to each of the output devices to whichthe control panel issues commands (i.e., a point-to-point or so-called“hub-and-spoke” arrangement). Such an arrangement can only be used forshort runs and is wiring intensive, which can be expensive to installand maintain. In addition, the RS 232 architecture does not provide forerror-handling.

SUMMARY OF THE INVENTION

[0006] A building automation system according to one embodiment of theinvention may comprise a controller area network (CAN) bus for abuilding. At least one control device is operatively associated with theCAN bus, the at least one control device issuing a signal over the CANbus. At least one controlled device is operatively associated with theCAN bus, the at least one controlled device responding to the signal.

[0007] An embodiment of a building automation method may comprise:receiving input at a control device for a building; generating a signalcorresponding to the input; issuing the signal over a controller areanetwork (CAN) bus; and responding to the signal at a controlled devicefor the building.

BRIEF DESCRIPTION OF THE DRAWINGS

[0008] Illustrative and presently preferred embodiments of the inventionare shown in the drawings, in which:

[0009]FIG. 1 is a high-level schematic diagram of one embodiment of abuilding automation system;

[0010]FIG. 2 is an illustration of one embodiment of an instructiontable for use with the building automation system shown in FIG. 1;

[0011]FIG. 3 is a high-level schematic diagram of another embodiment ofa building automation system;

[0012]FIG. 4 is a high-level schematic diagram showing one embodiment ofdistributed controllers for the building automation system of FIG. 3;

[0013]FIG. 5 is an illustration of one embodiment of a signal which maybe issued over the CAN bus of the building automation system.

DESCRIPTION OF THE PREFERRED EMBODIMENT

[0014] Embodiments of a building automation system 100 are shown anddescribed herein according to the teachings of the present invention.The building automation system 100 may be used to automate variousfunctions in a home or other building (not shown). Exemplary functionsmay include lighting, heating, air conditioning, audio/visual output,operating window coverings to open/close, and security, to name only afew.

[0015] The embodiment of building automation system 100 shown in FIG. 1may comprise one or more control devices 110-113 (e.g., a keypad)operatively associated with one or more controlled devices 120-124(e.g., a triac board). Control devices 110-113 (hereinafter, generallyreferred to as control device 110) issue commands, which in turninstruct the controlled devices 120-124 (hereinafter, generally referredto as controlled device 120) to perform a function. By way of example,when a homeowner (or more generally, a user) presses a key on the keypad(e.g., control device 110), the central lighting in the room mayilluminate to a predetermined intensity (e.g., 50%) and perimeterlighting in the room may be turned on (e.g., at 100% intensity) toilluminate artwork hanging on the walls.

[0016] It should be understood that the foregoing example is provided inorder to better understand one environment in which the buildingautomation system 100 of the present invention may be used. Of coursethe building automation system of the present invention may comprise anyof a wide range of other types and configurations of control devices 110and controlled devices 120, and various functions beyond lighting aroom, which are now known or that may be developed in the future. Theparticular types and configurations of control devices 110 andcontrolled devices 120 may depend in part on design considerations,which can be readily defined and implemented by one having ordinaryskill in the art after having become familiar with the teachings of theinvention.

[0017] According to preferred embodiments of the invention, controldevice 110 and controlled device 120 are operatively associated with acontrol area network (CAN) bus 130. The CAN bus 130 may comprise atwo-wire differential serial data bus. The CAN bus 130 is capable ofhigh-speed data transmission (about 1 Megabits per second (Mbits/s))over a distance of about 40 meters (m), and can be extended to about10,000 meters at transmission speeds of about 5 kilobits per second(kbits/s). It is also a robust bus and can be operated in noisyelectrical environments while maintaining the integrity of the data.

[0018] The building automation system 100 of the present invention isnot limited to any particular configuration or number of devices, andmay comprise as many as 16,000 or more devices linked over extended runsthroughout the building. The building automation system 100 alsopreferably comprises error handling and bus arbitration, enhancing itsperformance. The speed with which a number of (i.e., one or more)devices may send and receive signals over a single CAN bus isparticularly advantageous for building automation (e.g., lights can beturned on and off immediately without recognizable delay). In addition,more than one CAN bus 130, 131 may be combined to extend thefunctionality of the building automation system 100. For example, ageneral purpose CAN bus may be provided for lighting and another CAN busmay be dedicated to the security system. The building automation system100 may also be modified for different devices and/or functions, evenafter the initial installation, allowing the building automation systemto be tailored to the user's preferences.

[0019] Having briefly described a building automation system accordingto an embodiment of the invention, as well as some of the features andadvantages of the invention, embodiments of the invention will now bedescribed in detail.

[0020] According to one embodiment of the invention, building automationsystem 100 may comprise a CAN bus 130, as shown in FIG. 1. At least onecontrol device 110 may be operatively associated with the CAN bus 130,and at least one controlled device 120 may be operatively associatedwith the CAN bus 130. Suitable interfaces (not shown) may be providedfor control device 110 and controlled device 120 for issuing andreceiving signals over the CAN bus 130. Such interfaces can be readilyprovided by one skilled in the art after having become familiar with theteachings of the present invention.

[0021] As mentioned above, the CAN bus 130 may comprise a two-wiredifferential serial data bus. The CAN specification is currentlyavailable as version 1.0 and 2.0 and is published by the InternationalStandards Organization (ISO) as standards 11898 (high-speed) and 11519(low-speed). The CAN specification defines communication services andprotocols for the CAN bus, in particular, the physical layer and thedata link layer for communication over the CAN bus. Bus arbitration anderror management is also described. Of course the invention is notlimited to any particular version and it is intended that otherspecifications for the CAN bus now known or later developed are alsocontemplated as being within the scope of the invention.

[0022] Control device 110 may be any suitable device (e.g., a keypad,sensor, etc.) which is generally configured to receive input andgenerate a signal based on the received input. By way of example,control device 110 may be a keypad or keyboard. When the user presses akey (or sequence of keys) on the keypad, one or more signals may begenerated that are representative of the key(s) that were pressed. Thesignal(s), in turn, correspond to a predetermined function (e.g., dimcentral lighting to 50%, activate security system), as will be describedin more detail below.

[0023] Of course control device 110 may be any suitable device and isnot limited to a keypad or keyboard. Examples of control devices 110also include, but are not limited to, graphical user interfaces (GUI),personal computers (PC), remote control devices, security sensors,temperature sensors, light sensors, and timers.

[0024] Controlled device 120 may be any suitable device which isgenerally configured to perform one or more functions in response to asignal issued by control device 110. By way of example, controlleddevice 120 may be a controllable alternating current (AC) switch andassociated processing hardware and/or software, such as a triac board.When the triac board receives an instruction to dim the main lighting,the triac board causes the main lighting to dim (e.g., to 50%intensity). Preferably, the controlled device 120 receives theinstruction over the CAN bus 130, as will be described in more detailbelow. In other embodiments, controlled device 120 may also receiveinput from sources other than the CAN bus 130.

[0025] Of course it is understood that a single device need not bededicated as a control device 110, or alternatively, as a controlleddevice 120. A device which performs the functions of both a controldevice 110 and a controlled device 120 may also be used according to theteachings of the invention. Such a device is represented in thehigh-level schematic of FIG. 1 as separate devices 110 and 120. That is,when the device performs the functions of a control device, it isrepresented in FIG. 1 as control device 110. When the device performsthe functions of a controlled device, it is represented in FIG. 1 ascontrolled device 120.

[0026] It is also understood that control device 110 and controlleddevice 120 may be operatively associated with the CAN bus 130 in anysuitable manner, including by permanent, removable, or remote link. Byway of example, control device 110 and/or controlled device 120 may bepermanently linked to the CAN bus 130 by a hard-wire connection.Alternativley, control device 110 and/or controlled device 120 may beremovably linked to the CAN bus 130 by a suitable “plug-type”connection. Control device 110 and/or controlled device 120 may also beremotely linked to the CAN bus 130, for example via an RF link.

[0027] Building automation system 100 may also comprise a centralcontroller 140 operatively associated with the CAN bus 130 as shown inFIG. 1. Central controller 140 may be linked to the CAN bus 130 in anysuitable manner, such as was described above for control device 110 andcontrolled device 120.

[0028] Central controller 140 may be any suitable device generallyconfigured to receive a signal from control device 110 over the CAN bus130, and in turn, to issue a signal with a corresponding instructionover the CAN bus 130 for controlled device 120. In one embodiment,central controller 140 may be reprogrammable, i.e., capable of executingcomputer-readable program code (including but not limited to scripts),which can be changed to reprogram the central controller 140. By way ofexample, central controller 140 may comprise one or more personalcomputers or server computers, microprocessors, programmable logicdevices (PLA) such as a field programmable gate array (FPGA) orapplication-specific integrated circuit (ASIC), to name only a few.

[0029] Before continuing, it should be noted that the term “central” in“central controller 140” is used to describe the interoperability withmore than one of the control devices 110 and controlled devices 120. Itis not intended to limit the physical location of the central controllerwith respect to the CAN bus 130 (or subnets 131) or the devices on theCAN bus 130.

[0030] It should also be noted that central controller 140 may beprovided with various ancillary devices, for example, power supplies,electronic controls, input/output (I/O) devices, computer readablestorage media, etc. Such ancillary devices are well-understood andtherefore are not shown or described herein as further description isnot needed for a full understanding of, or to practice the invention.

[0031] Preferably, the central controller 140 also performs errorchecking and bus arbitration functions. Error checking and busarbitration is defined by the CAN specification, currently in versions1.0 and 2.0. These functions may be provided to enhance performance ofthe building automation system 100 by reducing the occurrence of corruptor lost signals on the CAN bus 130.

[0032] As mentioned briefly above, central controller 140 is configuredto receive signals over the CAN bus from control device 110, and issuesignals with corresponding instructions over the CAN bus for controlleddevice 120. Central controller 140 may access the instruction from aninstruction table, such as the exemplary instruction table 150 shown inFIG. 2.

[0033] Instruction table 150 may be defined based on various parameters,such as the needs and desires of the building occupant. Althoughinstruction table 150 may be generic (i.e., applicable to one or morepredefined configurations of the building automation system 100), it ispreferably custom or tailored to each building automation system 100 andis therefore defined once the configuration of a particular buildingautomation system 100 is known. In addition, instruction table 150preferably may be reconfigured based on the changing needs and/ordesires of the building occupants.

[0034] In one embodiment, the instruction table 150 may comprise signaldata 200 and instructions 210. Signal data 200 corresponds to the inputreceived by the central controller 140. In one embodiment, signal data200 comprises the identity of the control device (Device ID) and thetype of input received at the control device (Input ID). In thisembodiment, the instructions 210 are functions that the controlleddevice 120 may perform, and preferably correspond to the signal data200. For example, in FIG. 2, signal data 200 may comprise DeviceID=Device 1 and Input ID=Key 1. The instructions corresponding to thissignal data 200 are “Main Lighting 50%” and “Perimeter Lighting ON”.

[0035] It is understood that the instruction table 150 may be defined inany suitable manner. For example, instruction table 150 may be definedas a code-driven table. It is understood, however, that instructiontable 150 is not limited to any particular format and the embodimentshown in FIG. 2 is merely exemplary for purposes of illustrating its usein the present invention.

[0036] The instruction table 150 is preferably operatively associatedwith the central controller 140 for use with the building automationsystem 100. For example, the instruction table 150 may be stored onsuitable computer readable storage media accessible by the centralcontroller 140.

[0037] According to preferred embodiments, the instruction table 150 maybe modified or replaced. Modifying or replacing the instruction table150 is particularly advantageous when one or more control devices 110and/or controlled devices 120 are added or removed from the buildingautomation system 100. Modifying or replacing the instruction table 150may also be used to change one or more parameters for control device 110(e.g., defining a new key) and/or controlled device 120 (e.g., changingthe lighting intensity). For example, when the building changesoccupancy, the instruction table 150 may be changed to reflect needsand/or desires of the new occupants.

[0038] Optionally, building automation system 100 may comprise anexternal link 160. In one embodiment, external link 160 may comprise alink from central controller 140 to another network such as the Internetvia an Internet service provider (ISP). Preferably, external link 160may be used to import/export the instruction table 150 (e.g., atinstallation or for changes).

[0039] External link 160 may also be used to troubleshoot the buildingautomation system 100. For example, when an error occurs on the CAN bus130, the central controller 140 may generate an error message which maybe transmitted to the building owner and/or a monitoring service (e.g.,via email, pager alert, etc.).

[0040] Of course, it is understood that the external link 160 is notlimited to an ISP link. In other embodiments, the external link 160 maybe via a local area network (LAN), a wide area network (WAN), anIntranet, a telephony link. In addition, external link 160 may connectto any suitable external device, such as to a laptop computer, personaldigital assistant (PDA), pager, facsimile machine, or mobile phone, toname only a few. In addition, external link 160 may comprise a temporaryconnection for use by a service technician. For example, the externallink 160 may comprise a link suitable for connecting a laptop computerto the building automation system 100.

[0041] Building automation system 100 may also comprise an optionalrepeater 170, as shown in FIG. 1 provided in-line on the CAN bus 130.Repeater 170 may be used to extend the physical length of the CAN bus130, and/or increase the number of devices that can be provided on theCAN bus 130. For example, repeater 170 may amplify signals and/or“clean” (e.g., improve the signal to noise ratio) the signals issuedover CAN bus 130.

[0042] Building automation system 100 may also comprise one or moreadditional busses 131. Preferably, the optional bus 131 is also a CANbus. In one embodiment, building automation system 100 may comprisededicated busses 130, 131. Dedicated busses 130, 131 may be categorizedby type of device, area of the building (e.g., first floor, bedrooms),or any other suitable category. For example, a dedicated CAN bus 130 maybe provided for all of the lighting devices and another dedicated CANbus 131 may be provided for all of the security devices. Accordingly, afailure in one CAN bus 130 preferably does not affect operation of theother CAN bus 131.

[0043] Building automation system 100 may be operated as followsaccording to one embodiment of the invention. Control device 110 and/orcontrolled device 120 may be configured during manufacture, duringinstallation, or when reconfiguring the building automation system 100.Instruction table 150 is provided for use by the controller 140.Instruction table 150 is also defined for the building automation system100.

[0044] In any event, once the building automation system 100 isconfigured and ready for use, control device 110 may be operated toreceive input (e.g., from the user or other source), and generatesignals based on the received input. By way of example, when the userenters input to control device 110 (e.g., by pressing one or more keyson a keypad), control device 110 may issue signal(s) that arerepresentative of the input (e.g., the keys that were pressed). As anillustration, when the user presses the key labeled “IlluminateArtwork”, control device 110 issues signal(s) corresponding to one ormore functions to illuminate the artwork in the room. These signals areissued over the CAN bus 130 for one or more controlled devices 120.

[0045] In one embodiment, the signal(s) are broadcast by the controldevice 110 over the CAN bus 130. That is, signals are received by eachof the devices (110, 120, 140) on the CAN bus 130. Each device (110,120, 140) determines whether it should respond to the signal. Forexample, the device should respond where a packet identification in thesignal is related to the device function(s). It is noted that more thanone device may respond to the signal. If the device determines that itshould not respond, the device does nothing (i.e., the device “ignores”the signal).

[0046] Preferably in this embodiment, only the central controller 140responds to signal(s) from control device 110. Although each of thedevices on the CAN bus 130 receive the signal from control device 110,none of the other devices respond.

[0047] The central controller 140 receives the signal from controldevice 110. Central controller 140 responds by accessing the instructiontable 150 and issuing an instruction based on the signal. For example,when the signal data includes Device ID of “Device 1” and Input ID of“Key 2”, the corresponding instructions according to the instructiontable 150 in FIG. 2 are “Main Lighting 50%” and “Perimeter Lighting ON”.The central controller 140 issues these instructions over the CAN bus130.

[0048] In one embodiment, the central controller 140 broadcasts a signalcomprising the instructions over the CAN bus 130. The broadcast signalis received by each of the devices (110, 120, 140) on the CAN bus 130,and each device (110, 120, 140) determines whether it can respond to theinstructions. If the device (110, 120, 140) determines that it cannotrespond, it ignores the instructions.

[0049] In the above example, one of the devices (e.g., controlled device122 in FIG. 1) may be a triac board for the main lighting circuit, andanother of the devices (e.g., controlled device 123 in FIG. 1) may be asingle-pull single-throw switching board (e.g., a switch with associatedprocessing hardware and software) for the recessed perimeter lighting.Accordingly, controlled device 122 responds to the instruction “MainLighting 50%” by dimming the main lighting circuit to 50%, andcontrolled device 123 responds to the instruction “Perimeter LightingON” by turning on the recessed perimeter lighting. The central lightingin the room dims and the recessed perimeter lighting turns on,illuminating artwork hanging on the walls in the room.

[0050] Of course it is understood that the above example is merelyillustrative of one embodiment of the invention. The scope of theinvention is not limited to this example. Indeed, the buildingautomation system 100 of the present invention is also well-suited forperforming more elaborate functions, now know or that may be laterdeveloped, as will be readily appreciated by one skilled in the artafter having become familiar with the teachings of the presentinvention.

[0051] Another embodiment of the building automation system 300 is shownin FIG. 3 comprising at least one control device 310 and at least onecontrolled device 320 linked over CAN bus 330. It is noted that300-series reference numbers are used to refer to the like elementsshown in FIG. 1, which were described above with respect to embodiment100.

[0052] The central controller 140 shown and described above is optionalin embodiment 300, and may not be provided. The building automationsystem 300 comprises distributed controller(s) 400 (see FIG. 4)operativley associated with each control device 310. Alternatively,distributed controller(s) 400 may be operatively associated with eachcontrolled device 320. In another embodiment, distributed controllers400 may be operatively associated both with each control device 310 andwith each controlled device 320.

[0053] Distributed controller 400 may be any suitable device configuredto process signals 500 (see FIG. 5). In one embodiment, distributedcontroller 400 may be reprogrammable, i.e., capable of executingcomputer-readable program code (including but not limited to scripts),which can be changed to reprogram the distributed controller 400. One ormore of the distributed controllers 400 may also perform error checkingand bus arbitration functions for the CAN bus 330. Exemplary distributedcontrollers 400 may comprise one or more microprocessors, PLAs (e.g.,FPGA, ASIC), etc. It should be noted that distributed controllers 400may be operatively associated with control device 310 and/or controlleddevice 320 in any suitable manner. Preferably, distributed controllers400 are provided at, and are directly linked to control device 310and/or controlled device 320 (e.g., as part of the same computer board).

[0054] Advantageously, only the device operatively associated with afailed or otherwise offline distributed controller 400 is affected bysuch failure (or by being offline). Other devices 310, 320 of thebuilding automation system 300 may continue in operation even though oneor more of the distributed controllers 400 is no longer operational.Further advantages will be described below with regard to variousembodiments and will also become apparent to one skilled in the artafter having become familiar with the teachings of the invention.

[0055] In operation, distributed controller 400 preferably generatessignals 500 comprising signal data in one or more fields 510-540, asshown according to one embodiment in FIG. 5. For example, distributedcontroller 400 may generate a signal 500 comprising an instruction(e.g., field 520). That is, when control device 310 receives input,distributed controller 400 may use instruction table 410 to generate asignal 500 comprising corresponding instruction(s) for controlled device320. Likewise, distributed controller 400 may perform any number offunctions for the controlled device 320. In one embodiment, distributedcontroller 400 generates instructions for controlled device 320 based onsignals that are received over the CAN bus 330.

[0056] According to embodiments of building automation system 300 (FIG.3), control device 310 and controlled device 320 may each comprise adevice address 430 (FIG. 4). Preferably, each device address 430 isunique to the device 310, 320. For example, device addresses 430 may beassigned to the devices 310, 320 as unique part numbers, although it isnoted that the part number need not be numerical. The device address 430may be provided with each device 310, 320 in a suitable memory, althoughother embodiments are also contemplated as being within the scope of theinvention. In any event, no other device 310, 320, according to thisembodiment, has the same device address 430, thereby reducing thelikelihood that the device 310, 320 is misidentified. For example, atriac board is not misidentified on the CAN bus 330 as a security board(e.g., activating an alarm when the user intends to turn on the lights).

[0057] It is understood that other embodiments are also contemplated asbeing within the scope of the invention. In another embodiment, thedevice address 430 may be unique to a category of devices. For example,each triac board may have the same device address 430, which isdifferent from the device address 430 used to identify electric motorcontrols. Yet other embodiments are also contemplated as being withinthe scope of the invention and will become apparent to those skilled inthe art after having become familiar with the teachings of theinvention.

[0058] The address of the devices 310, 320 (FIG. 3) may be provided inthe signals 500 (FIG. 5), for example, in an address field 510.Accordingly, the signals 500 may be addressed to specific controldevices 310 and/or controlled devices 320, allowing so called“peer-to-peer” communication over the CAN bus 330 even though the signal500 is broadcast to each of the devices on the CAN bus 330. Addressingalso allows particular device(s) on the CAN bus 330 to be reset withouthaving to reset all of the devices on the CAN bus 330 (i.e., only thedevice(s) identified in the address field 510 perform a resetinstruction in field 520).

[0059] In operation, the distributed controller 400 processes theaddress field 510 of the signal 500 to determine whether it is addressedto the device 310, 320. By way of example, the signal 500 may bebroadcast over the CAN bus 330 to each of the devices 310, 320, asdiscussed above. The distributed controllers 400 read the address in theaddress field 510 and determine whether it corresponds to the deviceaddress 430. If the address in the address field 510 does not correspondto the device address 430, the device 310, 320 does not respond.Preferably, the controller 400 stops processing the signal 500, therebyconserving processing power and increasing the efficiency of thebuilding automation system 300. If the address in the address field 510corresponds to the device address 430, the controller 400 continuesprocessing the signal 500. Again, it is noted that more than one devicemay respond to a signal.

[0060] Other embodiments are also contemplated as being within the scopeof the invention. A signal 500 may be addressed to all of the devices onthe CAN bus 330 (e.g., by setting the address field to null). Forexample, a signal 500 may be addressed to all of the devices so that theuser can readily reset all of the devices on the CAN bus 330 after apower outage. Likewise, a signal 500 may be addressed to groups ofdevices by including a group identification in the address field 510 oranother field (e.g., Field n 540). For example, a signal 500 may beaddressed to all of the devices, or particular types of devices (e.g.,the lights) or categories of devices (e.g., outdoor lights) so that theuser can readily shut all of those devices (e.g., by pressing a singlekey).

[0061] As discussed above, the device address 430 (FIG. 4) itself may beused in the address field 510 (FIG. 5) to identify devices 310, 320.However, unique device addresses may comprise many digits (e.g., ten,twenty, or even more). A large address field 510 may reduce the sizethat can be allotted to other fields (e.g., to instruction field 520).In addition, a signal 500 having a large address field 510 may requiresignificant bandwidth for transmission over the CAN bus 330. Highbandwidth signals 500 slow transmission speeds, and may need to betransmitted as multiple packets, increasing congestion on the CAN bus330.

[0062] Accordingly, one embodiment of the building automation system maycomprise dynamic addresses 420 (FIG. 4) for each device 310, 320 orcategory of device. That is, each device 310, 320 (or category ofdevice) may be assigned a dynamic address 420 that is unique to aparticular building automation system 300. The dynamic address 420 ispreferably shorter than the device address 430 and still uniquelyidentifies the device 310, 320 (or category of device) in a particularbuilding automation system 300 (or on a particular “leg” of the buildingautomation system 300).

[0063] By way of example, consider three keypads Keypad A, Keypad B, andKeypad C. Keypad A and Keypad B are used in one building automationsystem (System A), and Keypad C is used in a separate buildingautomation system (System B). Each keypad has a unique device address430 that is different than any other device. For example, Keypad A mayhave device address “123ABC,” Keypad B may have device address “123XYZ,”and Keypad C may have device address “456ABC”. According to thisembodiment, each keypad is assigned a dynamic address 420 when it isprovided in the building automation system 300. For example, Keypad A isassigned dynamic address “10,” Keypad B is assigned dynamic address“20,” and Keypad C is assigned dynamic address “10.” Although Keypad Aand Keypad C both have the same dynamic address (i.e., “10), thesekeypads are used in different building automation systems (System A andSystem B) and therefore are still uniquely identified in theirrespective systems. However, Keypad A and Keypad B are both used inSystem A, and therefore are assigned dynamic addresses that are uniqueto System A to avoid being misidentified.

[0064] Building automation system 300 may also comprise one or more maps390 operatively associated with a bridge 380 (discussed in more detailbelow). Preferably, map 390 is stored in computer-readable storageaccessible by the bridge 380. The map 390 may also be operativelyassociated with one or more of the distributed controllers 400.

[0065] Map 390 may be defined in any suitable manner. For example, map390 may be defined as a text file using a word processor. Indeed, map390 may be defined as part of instruction table 410. It is understood,however, that map 390 is not limited to any particular format.

[0066] In one embodiment, map 390 comprises the identity of each device310, 320 on the CAN bus 330. Of course, a truncated version of the map390 may also be used and include only some of the devices. For example,the truncated version of map 390 stored at a controlled device 320 mayonly identify control devices 310 from which the controlled device 320will receive signals. As another example, truncated versions of the map390 may be provided at bridges 380 where the building automation system300 has more than one bridge 380. Each bridge 380 is provided with atruncated map 390 identifying only devices on the CAN bus 330 that arelinked to a particular bridge 380.

[0067] The map 390 may be updated manually (e.g., by exporting,modifying, and importing the map 390). Alternatively, map 390 may beupdated by automatically detecting or determining which of the devices310, 320 are on the CAN bus 330. When a device 310, 320 is added to orremoved from the CAN bus 330, bridge 380 and/or distributed controllers400 automatically determine the status of the devices 310, 320 on theCAN bus (i.e., whether a device has been added or removed). Bridge 380and/or distributed controllers 400 preferably update the maps 390 toreflect any changes.

[0068] By way of example, when a device 310, 320 is added to the CAN bus330, distributed controller 400 operatively associated with the addeddevice may issue a signal 500 comprising an address field 520 with itsdevice address 430. When the bridge 380 and/or others of the distributedcontrollers 400 receive the signal 500 and do not recognize the deviceaddress 430 (e.g., it is not listed in map 390), map 390 may be updatedwith the identity of the added device. Similarly, when a device 310, 320does not respond, map 390 may be updated to indicate that thenon-responsive device has been removed from the CAN bus 330, or isotherwise offline.

[0069] If dynamic addressing is used, as discussed above, the bridgeand/or distributed controllers 400 may also be used to assign a dynamicaddress to an added device. For example, bridge 380 and/or distributedcontroller 400 may assign a dynamic address that is not already beingused, and update the map 390 accordingly. The bridge 380 preferably alsoissues a signal 500 comprising the dynamic address to the distributedcontroller 400 of the added device (e.g., as dynamic address 420).Similarly, the dynamic address 420 may be removed from map 390 when adevice is removed from the CAN bus 330.

[0070] Also according to embodiments of building automation system, anacknowledgement may be issued over the CAN bus 330 when a signal 500 isreceived by the device. In one embodiment, the device sends anacknowledgement defined by the CAN protocol. Accordingly, if a signal isnot acknowledged, the sending device may resend the signal.

[0071] According to an alternative embodiment, the distributedcontroller 400 of a receiving device may issue a targetedacknowledgement, by returning a signal 500 with an acknowledgement field530 to the sending device. The acknowledgement field may comprise anacknowledgement or “ACK” message when a received signal is processed.Such an embodiment may be particularly desirable when more than onesignal is delivered over the CAN bus 330 and must be assembled at thereceiving device before it can be processed. Likewise, theacknowledgement field may be a negative acknowledged or “NAK” messagewhen the received signal(s) cannot be read or are otherwise unusable.Optionally, an error message may also be generated for the user orservice technician (e.g., by a suitable error-processing device on theCAN bus 330 and transmitted via external link 360).

[0072] As just mentioned, building automation system 300 may optionallycomprise external link 360, as shown in FIG. 3. External link 360 mayinterface with the CAN bus 330 through one or more of the controldevices 310, controlled devices 320, and/or bridge 380. Alternatively,external link 360 may interface via a port provided on the CAN bus 330.As discussed above for embodiment 100, external link 360 may be used toimport/export instruction table(s) 410, maps 390, etc. External link 360may also be used to troubleshoot the building automation system 300.

[0073] Building automation system 300 may also comprise an optionalrepeater 370, as shown in FIG. 3. Repeater 370 may be provided on theCAN bus 330 to extend the physical length of the CAN bus 330. Asdiscussed above for embodiment 100, repeater 370 may be used to extendthe physical length of the CAN bus 130, and/or increase the number ofdevices that can be provided on the CAN bus 130. For example, repeater170 may amplify and/or clean (i.e., by improving the signal to noiseratio) signals issued over the CAN bus 130.

[0074] Building automation system 300 may also comprise one or moreadditional busses 331, which may be linked to one another via bridge 380as shown in FIG. 3. Although not required, the optional bus 331 may alsobe a CAN bus. As discussed above, building automation system 300 maycomprise separate and/or dedicated busses 330, 331 for different areasof the building and/or for different functions.

[0075] It is readily apparent that embodiments of the present inventionrepresent an important development in the field of building automation.Having herein set forth preferred embodiments of the present invention,it is anticipated that suitable modifications can be made thereto whichwill nonetheless remain within the scope of the present invention.

What is claimed is:
 1. A building automation system, comprising: acontroller area network (CAN) bus for a building; at least one controldevice operatively associated with said CAN bus, said at least onecontrol device issuing a signal over said CAN bus; and at least onecontrolled device operatively associated with said CAN bus, said atleast one controlled device responding to said signal.
 2. The buildingautomation system of claim 1, further comprising a controlleroperatively associated with said CAN bus, said controller generating atleast one instruction corresponding to said signal, said controllerissuing said instruction over said CAN bus for said at least onecontrolled device.
 3. The building automation system of claim 2, whereinthe controller is a central controller.
 4. The building automationsystem of claim 2, wherein the controller is a distributed controller.5. The building automation system of claim 1, wherein said at least onecontrol device issues said signal by broadcasting said signal over saidCAN bus.
 6. The building automation system of claim 1, wherein said CANbus comprises separate busses operatively associated with one another.7. The building automation system of claim 6, wherein each of saidseparate busses is a dedicated bus.
 8. The building automation system ofclaim 1, further comprising at least one repeater operatively associatedwith said CAN bus.
 9. The building automation system of claim 1, furthercomprising an external link from said CAN bus, said external linkproviding access to said CAN bus.
 10. A building automation system,comprising: a controller area network (CAN) bus for a building; at leastone control device operatively associated with said CAN bus, said atleast one control device receiving input; at least one distributedcontroller operatively associated with said at least one control device,said at least one controller generating a signal corresponding to saidinput received by said at least one control device; at least onecontrolled device operatively associated with said CAN bus, said atleast one controlled device responding to said signal.
 11. The buildingautomation system of claim 10, further comprising at least anotherdistributed controller operatively associated with said at least onecontrolled device.
 12. The building automation system of claim 10,wherein said signal comprises an instruction.
 13. The buildingautomation system of claim 10, wherein said signal comprises an address,said address identifying said at least one controlled device.
 14. Thebuilding automation system of claim 10, wherein said at least onecontrolled device comprises a device identification.
 15. The buildingautomation system of claim 14, wherein said at least one controlleddevice comprises a dynamic address corresponding to said deviceidentification.
 16. The building automation system of claim 10, furthercomprising an external link.
 17. The building automation system of claim10, further comprising at least one map, said at least one mapcomprising a status of devices on said CAN bus.
 18. A buildingautomation system, comprising: a controller area network (CAN) bus; atleast one control device operatively associated with said CAN bus, saidat least one control device issuing a signal corresponding to inputreceived at said at least one control device; at least one controlleddevice operatively associated with said CAN bus, said at least onecontrolled device receiving said signal; at least one distributedcontroller operatively associated with said at least one controlleddevice, said at least one distributed controller generating aninstruction corresponding to said signal received by said at least onecontrolled device, said at least one controlled device responding tosaid signal based on said instruction generated by said at least onecontroller.
 19. The building automation system of claim 18, furthercomprising at least another distributed controller operativelyassociated with said at least one control device.
 20. The buildingautomation system of claim 18, wherein said signal comprises an addressfield, said address field having an address for identifying said atleast one control device.
 21. The building automation system of claim18, wherein said at least one control device and said at least onecontrolled device each comprise unique device identifications.
 22. Thebuilding automation system of claim 21, wherein said at least onecontrol device and said at least one controlled device each comprisedynamic addresses corresponding to said unique device identifications.23. The building automation system of claim 18, further comprising atleast one map, said at least one map comprising a status of devices onsaid CAN bus.
 24. The building automation system of claim 18, whereinthe at least one control device is operatively associated with said CANbus via a remote link.
 25. The building automation system of claim 18,wherein the at least one controlled device is operatively associatedwith said CAN bus via a remote link.
 26. A building automation method,comprising: receiving input at a control device for a building;generating a signal corresponding to the input; issuing the signal overa controller area network (CAN) bus; and responding to the signal at acontrolled device for the building.
 27. The method of claim 26, furthercomprising generating an instruction corresponding to the input receivedat the control device for the building, the signal having theinstruction.
 28. The method of claim 26, further comprising identifyingthe control device in the signal.
 29. The method of claim 26, furthercomprising identifying the controlled device in the signal.
 30. Themethod of claim 26, further comprising issuing an acknowledgement fromthe controlled device over the CAN bus for the control device.
 31. Themethod of claim 26, further comprising automatically determining thestatus of the control device and the controlled device.